package com.example.himalaya.interfaces;

import com.ximalaya.ting.android.opensdk.model.album.Album;
import com.ximalaya.ting.android.opensdk.model.track.Track;

import java.util.List;

/**
 * 专辑详情视图逻辑接口,用于被回调
 */
public interface IAlbumDetailViewCallback {

    /**
     * 加载专辑信息
     * @param album 
     */
    void onLoadAlbumInformation(Album album);


    /**
     * 加载详细的曲目列表
     * @param tracks 专辑的曲目列表
     */
    void onLoadDetailedTrackList(List<Track> tracks);

    /**
     * 加载正在加载页面
     */
    void onLoadLoading();

    /**
     * 加载网路错误页面
     */
    void onLoadNetworkError();

    /**
     * 加载数据为空页面
     */
    void onLoadDataEmpty();

    /**
     * 加载更多的结果
     * @param size size>0,表示加载成功，size<0,表示加载失败
     */
    void onLoadMoreFinished(int size);

    /**
     * 加载刷新的结果
     * @param size size>0,表示加载成功，size<0,表示加载失败
     */
    void onRefreshFinished(int size);
}
